package br.com.intelsys.basics.dao;

import java.io.Serializable;

import org.hibernate.Criteria;

public interface QueryManager {
	public Object get(final Class<?> entityClass, final Serializable id);

	public void saveOrUpdate(Object entity);

	public void saveOrUpdateAndAfterRefresh(Object entity, Object... refreshObject);

	public void delete(Object entity);

	public void deleteAfterRefresh(Object entity, Object... refreshObject);

	public QueryManagerMaker find(String queryName);

	public Trans beginTransaction();

	public Criteria createCriteria(Class<?> clazz);

}
